home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 7 / Amiga Format AFCD07 (Dec 1996, Issue 91).iso / serious / shareware / programming / aros / c / makefile < prev    next >
Makefile  |  1996-09-13  |  1KB  |  73 lines

  1. TOP=..
  2.  
  3. include $(TOP)/make.cfg
  4.  
  5. #CC=$(PURIFY) $(SYS_CC)
  6.  
  7. OBJDIR = $(GENDIR)/exe
  8. LIBS = -L$(LIBDIR) -laros
  9.  
  10. FILES = helloworld \
  11.     newshell \
  12.     type \
  13.     echo \
  14.     cd \
  15.     avail \
  16.     list \
  17.     librarytest \
  18.     run \
  19.     execute \
  20.     path \
  21.     shell \
  22.     dir \
  23.     wait \
  24.     demowin \
  25.     assign \
  26.     delete \
  27.     makedir \
  28.     mount
  29.  
  30. EXES = $(foreach f,$(FILES),$(EXEDIR)/$(f))
  31.  
  32. all: setup $(EXES) $(EXEDIR)/forkbomb
  33.  
  34. setup :
  35.     @if [ ! -d $(EXEDIR) ]; then $(MKDIR) $(EXEDIR) ; fi
  36.     @if [ ! -d $(OBJDIR) ]; then $(MKDIR) $(OBJDIR) ; fi
  37.  
  38. clean:
  39.     $(RM) $(EXES)
  40.  
  41. $(EXEDIR)/forkbomb : forkbomb
  42.     $(CP) $< $@
  43.  
  44. $(EXEDIR)/dir: $(OBJDIR)/dir.o $(LIBDIR)/libaros.a
  45.     $(CC) $(ILDFLAGS) $< -o $@ $(LIBS)
  46.  
  47. $(EXEDIR)/librarytest: $(OBJDIR)/librarytest.o
  48.     $(CC) $(ILDFLAGS) $< -o $@ $(LIBS)
  49.  
  50. $(OBJDIR)/librarytest.o: librarytest.c $(TOP)/libs/dummylib_gcc.h
  51.     $(CC) $(CFLAGS) -I $(TOP)/libs -c $< -o $@
  52.  
  53. $(EXEDIR)/%: $(OBJDIR)/%.o
  54.     $(CC) $(ILDFLAGS) $< -o $@ $(LIBS)
  55.  
  56. $(OBJDIR)/%.o: %.c
  57.     $(CC) $(CFLAGS) -c $< -o $@
  58.  
  59. $(OBJDIR)/%.d: %.c
  60.     @if [ ! -d $(OBJDIR) ]; then $(MKDIR) $(OBJDIR) ; fi
  61.     @$(RM) $@
  62.     @touch $@
  63.     $(MKDEPEND) -f$@ -p$(OBJDIR)/ -- $(CFLAGS) -- $^
  64.  
  65. $(OBJDIR)/librarytest.d: librarytest.c
  66.     @if [ ! -d $(OBJDIR) ]; then $(MKDIR) $(OBJDIR) ; fi
  67.     @$(RM) $@
  68.     @touch $@
  69.     $(MKDEPEND) -f$@ -p$(OBJDIR)/ -- $(CFLAGS) -I $(TOP)/libs -- $^
  70.  
  71. include $(foreach f,$(FILES),$(OBJDIR)/$(f).d)
  72.  
  73.